<!DOCTYPE html>
<html lang="en">
  <head>
    <meta charset="UTF-8" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0" />
    <title>时间管理</title>
    <script src="https://html2canvas.hertzen.com/dist/html2canvas.min.js"></script>
    <style>

      body {
        background-color: #000;
        color: #fff;
      }
      #daily-summary {
        width: 100%;
        height: 200px;
      }
    </style>
  </head>

 <h1>计时器</h1>

 <button onclick="location.href='https://music.xf1433.com/'">音乐URL可找网页</button>
<body>
    <div id="timer">
        <label for="hours">Hours:</label>
        <input type="number" id="hours" value="0">

        <label for="minutes">Minutes:</label>
        <input type="number" id="minutes" value="0">

        <label for="seconds">Seconds:</label>
        <input type="number" id="seconds" value="0">

        <br><br>

        <label for="music">Music URL:</label>
        <input type="text" id="music">

        <br><br>

        <button onclick="startTimer()">Start Countdown</button>
        <button onclick="resetTimer()">Refresh Countdown</button>

        <br><br>

        <span id="countdown"></span>
    </div>

    <audio id="alarm" loop></audio>

    <script>
        let hours = document.getElementById('hours');
        let minutes = document.getElementById('minutes');
        let seconds = document.getElementById('seconds');
        let countdown = document.getElementById('countdown');
        let countdownInterval;

       function startTimer() {
  clearInterval(countdownInterval);

  let currentTime = new Date().getTime();
  let targetTime =
    currentTime +
    parseInt(hours.value) * 60 * 60 * 1000 +
    parseInt(minutes.value) * 60 * 1000 +
    parseInt(seconds.value) * 1000;

  let musicUrl = document.getElementById("music").value;
  if (!musicUrl) {
    // 如果用户没有输入音乐URL，则使用默认的URL
    musicUrl =
      "http://m701.music.126.net/20230704120141/9c4a8b1dcb3654f95f2153cb4c0611fe/jdymusic/obj/wo3DlMOGwrbDjj7DisKw/25338617532/bafe/39a6/d9c9/f99137a409e779bb63b1d71f8facf434.mp3";
  }

  let audioElement = document.getElementById("alarm");
  if (audioElement) {
    audioElement.pause();
    audioElement.currentTime = 0;
  } else {
    audioElement = document.createElement("audio");
    audioElement.id = "alarm";
    document.body.appendChild(audioElement);
  }
  audioElement.loop = true;
  audioElement.src = musicUrl;

  countdownInterval = setInterval(function () {
    currentTime = new Date().getTime();
    let remainingTime = targetTime - currentTime;

    let h = Math.floor(
      (remainingTime % (1000 * 60 * 60 * 24)) / (1000 * 60 * 60)
    );
    let m = Math.floor((remainingTime % (1000 * 60 * 60)) / (1000 * 60));
    let s = Math.floor((remainingTime % (1000 * 60)) / 1000);

    countdown.innerHTML = `${h}h ${m}m ${s}s`;
    document.title = `${h}h ${m}m ${s}s - Countdown Timer`;

    if (remainingTime < 0) {
      clearInterval(countdownInterval);

      countdown.innerHTML = "00h 00m 00s";
      document.title = "Countdown Timer";

      audioElement.play();

      document.getElementById("music").value = "";
    }
  }, 1000);
}

function resetTimer() {
  clearInterval(countdownInterval);
  hours.value = "0";
  minutes.value = "0";
  seconds.value = "0";
  countdown.innerHTML = "00h 00m 00s";
  document.title = "Countdown Timer";

  let audioElement = document.getElementById("alarm");
  if (audioElement) {
    audioElement.pause();
    audioElement.currentTime = 0;
    audioElement.remove();
  }

  let musicUrl = document.getElementById("music").value;
  if (!musicUrl) {
    musicUrl =
      "http://m701.music.126.net/20230704120141/9c4a8b1dcb3654f95f2153cb4c0611fe/jdymusic/obj/wo3DlMOGwrbDjj7DisKw/25338617532/bafe/39a6/d9c9/f99137a409e779bb63b1d71f8facf434.mp3";
  }
  document.getElementById("music").value = "";
}
    </script>
</body>













  <body>
    <h1>番茄学习法</h1>
    <p>番茄学习法是一种时间管理技巧，旨在提高工作效率和专注度。它由弗朗西斯科·西里洛（Francesco Cirillo）于上世纪80年代创建。</p>
    <p>番茄学习法的具体步骤如下：</p>
    <ol>
        <li>设定目标： 首先，明确你要完成的任务或学习内容，并将其分解为小而可管理的任务</li>
        <li>设置番茄钟： 将一个番茄钟（通常为25分钟）设定为工作或学习的时间段。这个时间段称为一个"番茄"</li>
        <li>专注工作： 在一个完整的番茄钟期间内，尽可能集中注意力进行工作，不受干扰。避免在这个时间段内处理其他任务或查看社交媒体</li>
        <li>休息短暂时间： 当一个番茄钟结束时，休息短暂时间（通常为5分钟）。这是为了让大脑得到短暂的放松和恢复</li>
        <li>番茄钟循环： 每完成四个番茄钟后，进行一次较长的休息（通常为15-30分钟）。这个周期称为一个番茄钟循环</li>
    </ol>
    <p>番茄学习法的核心原理是将工作切分为可管理的时间块，并通过设定明确的时间限制来激励自己集中注意力工作。它帮助你在工作和休息之间找到平衡，提高效率和专注度，并避免长时间连续工作所带来的疲劳和压力。</p>
    <p>你可以使用一个简单的计时器或者专门的番茄钟应用程序来实践番茄学习法。比如上面这个，时间结束，会有音乐</p>
</body>

<body>
    <h1>任务设定目标方法</h1>
    <ol>
        <li>明确任务：</li>
        <p>首先，清楚地理解任务的本质和目标。搞清楚任务是什么，需要达到什么样的结果或完成什么样的工作。</p>

        <li>列出子任务：</li>
        <p>将整个任务分解为更小的子任务。思考完成该任务所需的步骤和行动，并将它们写下来。确保子任务是明确、可操作和具体的。</p>

        <li>确定优先级：</li>
        <p>对子任务进行评估，并确定它们的优先级顺序。考虑哪些子任务是最紧急或最重要的，或者哪些子任务需要在其他子任务之前完成。</p>

        <li>制定时间表：</li>
        <p>为每个子任务设定截止日期或预计完成时间。这将帮助你规划和管理时间，确保任务按时完成。</p>

        <li>分配资源：</li>
        <p>确定完成每个子任务所需的资源，例如时间、人力或资金。根据资源的可用性和限制，适当地安排和分配子任务。</p>

        <li>监督进展：</li>
        <p>在任务执行过程中，跟踪和监督每个子任务的进展。确保任务按计划进行，并调整计划以应对任何新的情况或挑战。</p>

        <li>反馈和调整：</li>
        <p>定期回顾任务的进展，并根据反馈信息进行调整和改进。如果需要，重新评估目标和优先级，以确保任务朝着正确的方向前进。</p>
    </ol>
</body>



<head>
  <title>每日科学任务管理器</title>
  <style>
    #taskList {
      list-style-type: none;
      padding: 0;
      margin-bottom: 20px;
    }
    #taskList li {
      margin-bottom: 10px;
    }
    #taskList li span {
      cursor: pointer;
    }
  </style>
</head>
<body>
  <h1>每日科学任务管理器</h1>

  <form id="taskForm">
    <label for="task">任务：</label>
    <input type="text" id="task" required>

    <label for="time">时间：</label>
    <input type="time" id="time" required>

    <button type="button" onclick="addTask()">添加任务</button>
  </form>

  <ul id="taskList"></ul>

  <script>
    // 任务列表
    let tasks = [
      { task: "起床", time: "07:30" },
      { task: "学习英语", time: "08:30" },
      { task: "吃饭", time: "11:00" },
      { task: "睡午觉", time: "13:00" },
      { task: "思路", time: "14:00" },
      { task: "散步运动", time: "20:00" },
      { task: "睡觉", time: "23:00" }
    ];

    // 添加任务
    function addTask() {
      const taskInput = document.getElementById('task');
      const timeInput = document.getElementById('time');

      const task = taskInput.value.trim();
      const time = timeInput.value.trim();

      if (task !== '' && time !== '') {
        const newTask = { task, time };
        let inserted = false;

        for (let i = 0; i < tasks.length; i++) {
          if (time < tasks[i].time) {
            tasks.splice(i, 0, newTask);
            inserted = true;
            break;
          }
        }

        if (!inserted) {
          tasks.push(newTask);
        }

        renderTasks();
        
        taskInput.value = '';
        timeInput.value = '';
      }
    }

    // 删除任务
    function deleteTask(index) {
      tasks.splice(index, 1);
      renderTasks();
    }

    // 渲染任务列表
    function renderTasks() {
      const taskList = document.getElementById('taskList');
      taskList.innerHTML = '';

      tasks.forEach((task, index) => {
        const listItem = document.createElement('li');
        listItem.innerHTML = `<span onclick="deleteTask(${index})">[删除]</span> ${task.time} - ${task.task}`;
        taskList.appendChild(listItem);
      });
    }

    // 初始化渲染任务列表
    renderTasks();
  </script>
</body>



<head>
    <title>目标管理</title>
</head>
<body>
    <section>
        <h1>长期目标：</h1>
        <article>
            <ul id="longterm-goals">
                <li>工作</li>
                <li>考博</li>
                <li>老师（编制）</li>
                <li>出国（学好英语）</li>
                <li>找到女朋友</li>
                <li>眼睛变好</li>
                <li>身体健康，变帅</li>
                <li>找个女朋友</li>
                <li>写一本小说</li>
            </ul>
        </article>
    </section>

    <section>
        <h2>中期目标：</h2>
        <article>
            <ul id="midterm-goals">
                <li>毕业论文</li>
                <li>核心文章</li>
                <li>Python</li>
                <li>PEAL</li>
                <li>编制</li>
                <li>入党</li>
            </ul>
        </article>
    </section>

    <section>
        <h3>短期目标：</h3>
        <article>
            <ul id="shortterm-goals">
                <li>Bilibili收藏夹</li>
                <li>训练投喂AI</li>
                <li>对富集分析做富集分析</li>
                <li>讲文献资料</li>
                <li>做好这个目标管理（符合科学），做好每日的规划</li>
                <li>长链非编码（了解）解决</li>
                <li>SNP位点</li>
                <li>护眼的学问</li>
                <li>方舟的规划</li>
            </ul>
        </article>
    </section>

    <section>
        <h4>当前目标：</h4>
        <article>
            <ul id="current-goals">
                <li>完成lncRNA的挖掘，完成这个网站。<button class="delete" onclick="deleteGoal(this)">删除</button></li>
                <li>不熬夜<button class="delete" onclick="deleteGoal(this)">删除</button></li>
            </ul>
        </article>
    </section>

    <button onclick="addGoal()">添加目标</button>

    <script>
        function addGoal() {
            var goal = prompt("请输入要添加的目标：");
            if (goal) {
                var ulId = prompt("请输入目标所属的目标列表（longterm、midterm、shortterm或current）：");
                var ul = document.getElementById(ulId + "-goals");
                if (ul) {
                    var li = document.createElement("li");
                    li.innerHTML = goal + '<button class="delete" onclick="deleteGoal(this)">删除</button>';
                    ul.appendChild(li);
                } else {
                    alert("目标列表不存在！");
                }
            }
        }

        function deleteGoal(button) {
            var li = button.parentNode;
            var ul = li.parentNode;
            ul.removeChild(li);
        }
    </script>
</body>




  <body>
    <h1>参考</h1>

    <input type="text" id="new-task" placeholder="输入任务名称" />
    <input type="number" id="new-task-score" placeholder="输入任务分数" />
    <button id="add-task">添加任务</button>

    <ul id="task-list">
      <li data-score="10">
        <input type="checkbox" id="task1" />
        <label for="task1">任务1</label>
        <span>(10分)</span>
        <button class="delete">删除</button>
      </li>

      <li data-score="20">
        <input type="checkbox" id="task2" />
        <label for="task2">任务2</label>
        <span>(20分)</span>
        <button class="delete">删除</button>
      </li>
      <li data-score="30">
        <input type="checkbox" id="task3" />
        <label for="task3">任务3</label>
        <span>(30分)</span>
        <button class="delete">删除</button>
      </li>

      <li data-score="15">
 	 <input type="checkbox" id="task4" />
 	 <label for="task5">学习专业课</label>
 	 <span>(15分)</span>
	 <button class="delete">删除</button>
	</li>
生活习惯
<li data-score="20"> <input type="checkbox" id="task33" /> <label for="task1">每日进入这个界面</label> <span>(20分)</span> <button class="delete">删除</button> </li> 
<li data-score="20"> <input type="checkbox" id="task34" /> <label for="task2">优先级处理得好</label> <span>(20分)</span> <button class="delete">删除</button> </li>
<li data-score="20"> <input type="checkbox" id="task35" /> <label for="task3">10:30前睡觉</label> <span>(20分)</span> <button class="delete">删除</button> </li>
<li data-score="10"> <input type="checkbox" id="task17" /> <label for="task17">多喝水</label> <span>(10分)</span> <button class="delete">删除</button> </li>
<li data-score="10"> <input type="checkbox" id="task15" /> <label for="task15">勤洗脸</label> <span>(10分)</span> <button class="delete">删除</button> </li>
<li data-score="20"> <input type="checkbox" id="task16" /> <label for="task16">一天户外运动一小时往上</label> <span>(20分)</span> <button class="delete">删除</button> </li>
<li data-score="20"> <input type="checkbox" id="task10" /> <label for="task10">看手机屏幕少于6小时一天</label> <span>(20分)</span> <button class="delete">删除</button> </li> 
<li data-score="15"> <input type="checkbox" id="task11" /> <label for="task11">不玩游戏或少于15分钟</label> <span>(15分)</span> <button class="delete">删除</button> </li>
<li data-score="15"> <input type="checkbox" id="task9" /> <label for="task9">散步</label> <span>(15分)</span> <button class="delete">删除</button> </li> 
<li data-score="10"> <input type="checkbox" id="task19" /> <label for="task19">减肥</label> <span>(10分)</span> <button class="delete">删除</button> </li> 




学习任务


<li data-score="15"> <input type="checkbox" id="task4" /> <label for="task4">看篇论文</label> <span>(15分)</span> <button class="delete">删除</button> </li>
<li data-score="10"> <input type="checkbox" id="task6" /> <label for="task6">预习与复习计算机学习</label> <span>(10分)</span> <button class="delete">删除</button> </li>
<li data-score="10"> <input type="checkbox" id="task6" /> <label for="task6">看个ChatGTP的文章</label> <span>(10分)</span> <button class="delete">删除</button> </li>
<li data-score="10"> <input type="checkbox" id="task7" /> <label for="task7">学英语单词30个</label> <span>(10分)</span> <button class="delete">删除</button> </li>
<li data-score="10"> <input type="checkbox" id="task8" /> <label for="task8">练习键盘15分钟</label> <span>(10分)</span> <button class="delete">删除</button> </li> 
<li data-score="5"> <input type="checkbox" id="task18" /> <label for="task18">好的句子</label> <span>(5分)</span> <button class="delete">删除</button> </li>
<li data-score="5"> <input type="checkbox" id="task27" /> <label for="task27">看个实验</label> <span>(5分)</span> <button class="delete">删除</button> </li>


自我提升
<li data-score="20"> <input type="checkbox" id="task12" /> <label for="task12">反思20分钟（专业课，小说灵感，赚钱方式,交友）</label> <span>(20分)</span> <button class="delete">删除</button> </li>
<li data-score="30"> <input type="checkbox" id="task13" /> <label for="task13">不焦虑</label> <span>(30分)</span> <button class="delete">删除</button> </li>
<li data-score="15"> <input type="checkbox" id="task14" /> <label for="task14">赚钱</label> <span>(15分)</span> <button class="delete">删除</button> </li> 



<li data-score="10"> <input type="checkbox" id="task20" /> <label for="task20">和同学搞好关系</label> <span>(10分)</span> <button class="delete">删除</button> </li> 
<li data-score="15"> <input type="checkbox" id="task21" /> <label for="task21">和老师搞好关系</label> <span>(15分)</span> <button class="delete">删除</button> </li> 
<li data-score="5"> <input type="checkbox" id="task22" /> <label for="task22">好的歌曲</label> <span>(5分)</span> <button class="delete">删除</button> </li> 
<li data-score="5"> <input type="checkbox" id="task23" /> <label for="task23">说话技巧</label> <span>(10分)</span> <button class="delete">删除</button> </li> 
<li data-score="5"> <input type="checkbox" id="task24" /> <label for="task24">搞笑段子</label> <span>(5分)</span> <button class="delete">删除</button> </li>
<li data-score="5"> <input type="checkbox" id="task25" /> <label for="task25">心理学问</label> <span>(5分)</span> <button class="delete">删除</button> </li>
<li data-score="5"> <input type="checkbox" id="task26" /> <label for="task26">经济学问</label> <span>(5分)</span> <button class="delete">删除</button> </li> 

<li data-score="20"> <input type="checkbox" id="task28" /> <label for="task28">学习新技能</label> <span>(20分)</span> <button class="delete">删除</button> </li>
<li data-score="10"> <input type="checkbox" id="task29" /> <label for="task29">不拖延</label> <span>(10分)</span> <button class="delete">删除</button> </li>
<li data-score="10"> <input type="checkbox" id="task30" /> <label for="task30">自我提醒</label> <span>(10分)</span> <button class="delete">删除</button> </li>
<li data-score="10"> <input type="checkbox" id="task31" /> <label for="task31">漂亮的发型</label> <span>(10分)</span> <button class="delete">删除</button> </li>
<li data-score="10"> <input type="checkbox" id="task32" /> <label for="task32">穿搭得体</label> <span>(10分)</span> <button class="delete">删除</button> </li> 




    </ul>

    <h2>总分：<span id="total-score">0</span></h2>

    <label for="daily-summary">每日简述：</label>
    <textarea id="daily-summary" placeholder="输入每日简述"></textarea>

    <button id="refresh-btn">刷新</button>
    <button id="export-btn">导出</button>

    <script>
      const taskList = document.getElementById("task-list");
      const newTaskInput = document.getElementById("new-task");
      const newTaskScoreInput = document.getElementById("new-task-score");
      const addTaskButton = document.getElementById("add-task");
      const totalScoreElement = document.getElementById("total-score");
      let totalScore = 0;

      const dailySummaryInput = document.getElementById("daily-summary");
      let dailySummary = "";

      const calculateTotalScore = () => {
        let score = 0;
        for (let i = 0; i < taskList.children.length; i++) {
          const taskItem = taskList.children[i];
          const taskScore = parseInt(taskItem.dataset.score);
          if (taskItem.querySelector("input[type=checkbox]").checked) {
            score += taskScore;
          }
        }
        return score;
      };

      addTaskButton.addEventListener("click", () => {
        const taskName = newTaskInput.value;
        const taskScore = parseInt(newTaskScoreInput.value);

        if (!taskName || !taskScore) {
          alert("请输入任务名称和分数！");
          return;
        }

        const taskItem = document.createElement("li");
        taskItem.dataset.score = taskScore;

        const taskCheckbox = document.createElement("input");
        taskCheckbox.type = "checkbox";
        taskCheckbox.id = `task${taskList.childElementCount + 1}`;

        const taskLabel = document.createElement("label");
        taskLabel.htmlFor = `task${taskList.childElementCount + 1}`;
        taskLabel.textContent = taskName;

        const taskScoreSpan = document.createElement("span");
        taskScoreSpan.textContent = `(${taskScore}分)`;

        const deleteButton = document.createElement("button");
        deleteButton.classList.add("delete");
        deleteButton.textContent = "删除";

        taskItem.appendChild(taskCheckbox);
        taskItem.appendChild(taskLabel);
        taskItem.appendChild(taskScoreSpan);
        taskItem.appendChild(deleteButton);

        taskList.appendChild(taskItem);

        totalScore += taskScore;
        totalScoreElement.textContent = totalScore;

        newTaskInput.value = "";
        newTaskScoreInput.value = "";
      });

      taskList.addEventListener("click", (event) => {
        if (event.target.tagName.toLowerCase() === "button") {
          const taskItem = event.target.parentElement;
          const taskScore = parseInt(taskItem.dataset.score);
          taskList.removeChild(taskItem);
          totalScore -= taskScore;
          totalScoreElement.textContent = totalScore;
        }
      });

      dailySummaryInput.addEventListener("input", (event) => {
        dailySummary = event.target.value;
      });

      const refreshButton = document.getElementById("refresh-btn");
      refreshButton.addEventListener("click", () => {
        totalScore = calculateTotalScore();
        totalScoreElement.textContent = totalScore;
      });

      document.getElementById("export-btn").addEventListener("click", () => {
        html2canvas(document.body).then((canvas) => {
          const dataURL = canvas.toDataURL("image/png");
          const link = document.createElement("a");
          link.download = "时间管理.png";
          link.href = dataURL;
          link.click();
        });
      });
    </script>
  </body>

</html>